package com.gitee.sop.sopauth.dto;

import com.alibaba.fastjson.JSONObject;
import lombok.Data;

import java.io.Serializable;

/**
 * 用户信息
 *
 * @author wlx
 */
@Data
public class CustomLoginUser implements Serializable {
    private static final long serialVersionUID = 1L;

    /**
     * 授权类型。<br>
     * 如果使用app_auth_code换取token，则为authorization_code，
     * 如果使用refresh_token换取新的token，则为refresh_token
     */
    private String grant_type = "authorization_code";

    /**
     * 授权码.与refresh_token二选一，用户对应用授权后得到，即第一步中开发者获取到的app_auth_code值
     */
    private String code;

    /**
     * 刷新令牌.与code二选一，可为空，刷新令牌时使用
     */
    private String refresh_token;

    /**
     * 类型 code 或者 token
     */
    private String responseType;

    /**
     * 应用id
     */
    private String appId;

    /**
     * 应用名称
     */
    private String appName;

    /**
     * 登录模式
     */
    private String loginType;

    /**
     * 接收者
     */
    private String receiver;


    /**
     * 注册平台
     */
    private String os;

    /**
     * 登录设备token
     */
    private String loginDeviceToken;

    /**
     * 登录账号
     */
    private String username;

    /**
     * 登录密码
     */
    private String password;


    /**
     * 登录IP地址
     */
    private String ip;

    /**
     * 扩展数据
     */
    private JSONObject extData;

    /**
     * 用户uuid
     */
    private String userUuid;
}
